TEMPNAM - TMPNAM

#include <stdio.h>
            
char *tmpnam(string);
char *string;            указатель на временное имя.
            
char *tempnam(dir, prefix);
char *dir;
char *prefix;

Описание.
Функция tmpnan генерирует имя временного файла. Это имя хранится в string . Если string является NULL , память для строк размещается посредством функции malloc . При этом, если использовалась функция malloc , пользователь сам является ответственным за освобождение памяти.
Символьная строка, созданная по tmpnam , состоит из цифр от "0" до "9"; численное значение этой строки может изменяться от 1 до 65535.
Функция tempnam позволяет пользователю создать временный файл в другом директории. Prefix является приставкой к имени файла. Эта функция рассматривает файл с заданным именем в других директориях, расположенных в порядке старшинства.

                   УСЛОВИЕ                ИСПОЛЬЗУЕМЫЙ ДИРЕКТОРИЙ
           
         Устанавливается    переменная   Директорий,  определяемый
         окружения  TMP,  и существует   по ТМР.
         директорий,  определяемый  по
         TMP.
        
         Переменная  окружения  TMP не   Аргумент dir для  tempnam.
         устанавливается     или    не
         существует        директорий,
         определяемый по TMP.
        
         Аргумент  dir  является  NULL   P_tmpdir  в <stdio.h>.
         или  dir  является  именем не
         существующего директоия.
        
         Не существует P_tmpdir.         \tmp.
            

Если все это отсутствует, tempnam возвращает значение NULL.

Возвращаемое значение.
Эти функции возвращают указатель на сгенерированное имя, если есть возможность создать это имя, или если имя не является единственным (уникальным). Если имя не может быть создано или оно всегда существует, функции tmpnam и tempnam возвращают значение NULL.

Пример:

            #include <stdio.h>
            
            main ()
            {
            char *name1, *name2;
            
            if ((name1 = tmpnam(NULL)) != NULL)
               printf("%s is safe to use as a temporary file.\n",
                      name1);
            else
               printf("cannot create a unique file name\n");
            
            if ((name2 = tempnam("a:\\tmp", "stq")) != NULL)
               printf("%s is safe to use as a temporary file.\n",
                      name2);
            else
               printf("cannot create a unique file name\n");
            }
      
Hosted by uCoz